#include <iostream>
using namespace std;

int count_rabbits(int n)
{
    // 递归写法
    // if(n <= 2)
    //     return 1;
    // return count_rabbits(n - 1) + count_rabbits(n - 2);


    // 迭代法
    if(n <= 2)
        return 1;
    else
    {
        int n1 = 1;
        int n2 = 1;
        int n3;
        int i = n - 2;
        while(i--)
        {
            n3 = n1 + n2;
            n1 = n2;
            n2 = n3;
        }
        return n3;
    }
    
}

// 这道题曾经做过的，折腾半天看了视频讲解才知道这是斐波那契数列，我真的栓Q了
// 昨天才刚刚总结过可以考虑要求的结果是否有规律可循，今天就给忘了

int main() {
    int month;
    cin >> month;
    cout << count_rabbits(month) << endl;
    return 0;    
}
